package org.apli.haiam.admin.jsf.managed;

import com.apli.controladores.AplinfoFactoryBean;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.util.ResourceBundle;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.faces.model.DataModel;
import javax.faces.model.SelectItem;
import org.apli.haiam.admin.entidades.UsuarioAdmin;
import org.apli.haiam.ejb.entidades.CexAgenda;
import org.apli.haiam.ejb.entidades.CexConsultaTerapia;
import org.apli.haiam.ejb.entidades.CexTerapiaUsuario;
import org.apli.haiam.ejb.entidades.CexTipoTerapia;
import org.apli.haiam.ejb.interfaces.AdministradorHaiam;
import org.apli.haiam.ejb.interfaces.ConsExternaAdministrador;
import org.apli.jsf.managed.JsfBean;
import org.primefaces.event.RowEditEvent;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Clase backing Bean que administra la entidad CexConsultaTerapia.
 * <p>
 * <H6>Soporte:HAIAM
 * <I>david_s_1086@hotmail.com,david.carranza@haiam.gob.ec</I></H6>
 *
 * @author david Carranza
 * @version 1.0 30/03/2015
 */
@ManagedBean
@ViewScoped
public class JsfAtencionTerapia extends JsfBean<CexConsultaTerapia> {

    final Logger log = LoggerFactory.getLogger(JsfAtencionTerapia.class);
    private CexTipoTerapia cexTipoTerapia;
    private ConsExternaAdministrador hcAdmin;
    private boolean movilidad;
    private boolean fuerzaMuscular;
    private boolean elongacionesMusculares;
    private boolean digitoPresion;
    private boolean vestido;
    private boolean higiene;
    private boolean alimento;
    private boolean transferencias;
    private boolean memoria;
    private boolean concentracion;
    private boolean calculo;
    private boolean taller;
    private boolean laborterapia;
    private boolean individual;
    private boolean colectivo;
    private boolean parafina;
    private boolean motricidadFina;
    private boolean motricidadGruesa;
    private boolean ayudaPropiocep;
    private boolean entrenamientoPrePro;
    private boolean entrenamientoPostPro;
    private boolean controlPostura;
    private boolean osculoMotricidad;
    private boolean tecPropiocep;
    private boolean terapiaVestibular;
    private boolean tecEstimulacionSensorial;
    private boolean otros;
    private Date fecha;
    private UsuarioAdmin user;
    private CexTerapiaUsuario cexTerapiaUsuario;
    private static final String TIPO_IMPRESORAS = "IMP_TMU220D";
    private static final String NAME_REPORTE = "RPT_TURNO.jasper";
    private static final String TIPO_REPORTE_PDF = "application/pdf";
    private static final String TIPO_REPORTE_EXC = "application/vnd.ms-excel";

    // private AdmSistema sistemaSeleccionado;
    /**
     * Constructor por defecto.
     */
    public JsfAtencionTerapia() {
        // sistemaSeleccionado = new AdmSistema();
    }

    /**
     * Inicializa los datos miembros.
     */
    @Override
    protected void inicializar() {
        //setSwGrabar(false);
        object = new CexConsultaTerapia();
        movilidad = false;
        fuerzaMuscular = false;
        elongacionesMusculares = false;
        digitoPresion = false;
        vestido = false;
        higiene = false;
        alimento = false;
        transferencias = false;
        memoria = false;
        concentracion = false;
        calculo = false;
        taller = false;
        laborterapia = false;
        individual = false;
        colectivo = false;
        parafina = false;
        motricidadFina = false;
        motricidadGruesa = false;
        ayudaPropiocep = false;
        entrenamientoPrePro = false;
        entrenamientoPostPro = false;
        controlPostura = false;
        osculoMotricidad = false;
        tecPropiocep = false;
        terapiaVestibular = false;
        tecEstimulacionSensorial = false;
        otros = false;
        cexTerapiaUsuario = new CexTerapiaUsuario();
        user = (UsuarioAdmin) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user");
        try {
            fecha = admin.getFechaDb();
            cexTipoTerapia = (CexTipoTerapia) admin.buscar(CexTipoTerapia.class, "cttId", 7);
        } catch (Exception e) {
            log.error("inicializar() {} ", e.getMessage());
        }

    }

    /**
     * Carga la lista de objetos en una lista de la página.
     */
    @Override
    public void cargarLista() {
        String nombreMetodo = Thread.currentThread().getStackTrace()[1].getMethodName() + "()";
        if (admin == null) {
            lista = null;
            return;
        }
        try {
            lista = admin.listarOrdenada(object.getClass(), "cctFecha", fecha, "cexTipoTerapia", cexTipoTerapia, "cctEstado", 1, "cctHora", true);
        } catch (Exception e) {
            log.error("{}: {} ", nombreMetodo, e);
        }
    }

    /**
     * Graba el registro asociado al objeto que se administra en la página.
     *
     * @return null, se mantiene en la página invocada.
     */
    @Override
    public String grabarAction() {
        FacesContext context = FacesContext.getCurrentInstance();

        if (object.getCctId() != null) {
            try {

                //Reemplazo de valores 
                //Movilidad
                if (movilidad) {
                    object.setCctMovilidad(1);
                } else {
                    object.setCctMovilidad(0);
                }
                //Fuerza muscular
                if (fuerzaMuscular) {
                    object.setCctFuerzaMuscular(1);
                } else {
                    object.setCctFuerzaMuscular(0);
                }
                //Motricidad fina
                if (motricidadFina) {
                    object.setCctMotricidadFina(1);
                } else {
                    object.setCctMotricidadFina(0);
                }
                //Motricidad gruesa
                if (motricidadGruesa) {
                    object.setCctMotricidadGruesa(1);
                } else {
                    object.setCctMotricidadGruesa(0);
                }
                //Elongaciones
                if (elongacionesMusculares) {
                    object.setCctElongacionesMusculares(1);
                } else {
                    object.setCctElongacionesMusculares(0);
                }
                //Digitopresion
                if (digitoPresion) {
                    object.setCctDigitopresion(1);
                } else {
                    object.setCctDigitopresion(0);
                }
                //Vesstido
                if (vestido) {
                    object.setCctVestido(1);
                } else {
                    object.setCctVestido(0);
                }
                //higiene
                if (higiene) {
                    object.setCctHigiene(1);
                } else {
                    object.setCctHigiene(0);
                }
                //Alimento
                if (alimento) {
                    object.setCctAlimento(1);
                } else {
                    object.setCctAlimento(0);
                }
                //transferencias
                if (transferencias) {
                    object.setCctTransferencias(1);
                } else {
                    object.setCctTransferencias(0);
                }

                //Tecnica propioceo
                if (tecPropiocep) {
                    object.setCctTecnicaPropiocep(1);
                } else {
                    object.setCctTecnicaPropiocep(0);
                }
                //Ayudas tecnicas
                if (ayudaPropiocep) {
                    object.setCctAyudaTecnica(1);
                } else {
                    object.setCctAyudaTecnica(0);
                }
                //Entrenamiento prePotesico
                if (entrenamientoPrePro) {
                    object.setCctEntrenamientoPreprotesico(1);
                } else {
                    object.setCctEntrenamientoPreprotesico(0);
                }
                //entrenamiento pos protesico
                if (entrenamientoPostPro) {
                    object.setCctEntrenamientoPosprotesico(1);
                } else {
                    object.setCctEntrenamientoPosprotesico(0);
                }
                //Memoria
                if (memoria) {
                    object.setCctMemoria(1);
                } else {
                    object.setCctMemoria(0);
                }
                //Concentracion
                if (concentracion) {
                    object.setCctConcentracion(1);
                } else {
                    object.setCctConcentracion(0);
                }
                //Calculo
                if (calculo) {
                    object.setCctCalculo(1);
                } else {
                    object.setCctCalculo(0);
                }
                //terapia vestibular
                if (terapiaVestibular) {
                    object.setCctTerapiaVestibular(1);
                } else {
                    object.setCctTerapiaVestibular(0);
                }
                //control de postura
                if (controlPostura) {
                    object.setCctControlPostura(1);
                } else {
                    object.setCctControlPostura(0);
                }
                //Osculomotricidad
                if (osculoMotricidad) {
                    object.setCctOculomotricidad(1);
                } else {
                    object.setCctOculomotricidad(0);
                }
                //parafina
                if (parafina) {
                    object.setCctParafina(1);
                } else {
                    object.setCctParafina(0);
                }
                //tecnica de estimulacion sensorial
                if (tecEstimulacionSensorial) {
                    object.setCctTecnicaEstimulacionSensor(1);
                } else {
                    object.setCctTecnicaEstimulacionSensor(0);
                }
                //Otras
                if (otros) {
                    object.setCctOtros(1);
                } else {
                    object.setCctOtros(0);
                }
                //Otras
                if (taller) {
                    object.setCctTaller(1);
                } else {
                    object.setCctTaller(0);
                }
                //Laborterapia
                if (laborterapia) {
                    object.setCctLaborterapia(1);
                } else {
                    object.setCctLaborterapia(0);
                }
                //Ocio individual
                if (individual) {
                    object.setCctIndividual(1);
                } else {
                    object.setCctIndividual(0);
                }
                //ocio colectivo
                if (colectivo) {
                    object.setCctColectivo(1);
                } else {
                    object.setCctColectivo(0);
                }
                object.setCctHoraAtencion(admin.getFechaDb());
                hcAdmin.modificarTransaccion(object, (UsuarioAdmin) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user"));
                //Agregar usuario a la tabla terapia-Usuario
                if (!hcAdmin.existePorCampo(CexTerapiaUsuario.class, "cexConsultaTerapia", object, "cexConsultaTerapia.cexTipoTerapia", object.getCexTipoTerapia(),
                        "cexConsultaTerapia.cctFecha", object.getCctFecha(), "ctuIdUsuario", user.getUser().getIdUsuario())) {
                    cexTerapiaUsuario.setCexConsultaTerapia(object);
                    cexTerapiaUsuario.setCtuIdUsuario(user.getUser().getIdUsuario().intValue());
                    cexTerapiaUsuario.setCtuNombreUsuario(user.getUser().getAdmEmpleado().getNombreFull());
                    admin.crear(cexTerapiaUsuario, (UsuarioAdmin) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user"));
                }
                FacesContext.getCurrentInstance().addMessage(findComponent(context.getViewRoot(), "formDatos").getClientId(), new FacesMessage(bundle.getString("msg.actualizar")));
                inicializar();
            } catch (Exception e) {
                log.error("grabarAction() {} ", e.getMessage());
                FacesContext.getCurrentInstance().addMessage(findComponent(context.getViewRoot(), "formDatos").getClientId(), new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), e.getMessage()));
            }
        } else {
            FacesContext.getCurrentInstance().addMessage(findComponent(context.getViewRoot(), "formDatos").getClientId(), new FacesMessage(FacesMessage.SEVERITY_ERROR, "Debe seleccionar un paciente", "Debe seleccionar un paciente"));
        }
        cargarLista();
        return null;
    }

    /**
     * Graba el registro asociado al objeto que se administra en la página.
     *
     * @return null, se mantiene en la página invocada.
     */
    public String culminarTerapia() {
        FacesContext context = FacesContext.getCurrentInstance();

        if (object.getCctId() != null) {
            try {

                object.setCctEstado(2);
                hcAdmin.modificarTransaccion(object, (UsuarioAdmin) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user"));
                FacesContext.getCurrentInstance().addMessage(findComponent(context.getViewRoot(), "formDatos").getClientId(), new FacesMessage(bundle.getString("msg.actualizar")));
                inicializar();
            } catch (Exception e) {
                log.error("culminarTerapia() {} ", e.getMessage());
                FacesContext.getCurrentInstance().addMessage(findComponent(context.getViewRoot(), "formDatos").getClientId(), new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), e.getMessage()));
            }
        } else {
            FacesContext.getCurrentInstance().addMessage(findComponent(context.getViewRoot(), "formDatos").getClientId(), new FacesMessage(FacesMessage.SEVERITY_ERROR, "Debe seleccionar un paciente", "Debe seleccionar un paciente"));
        }
        cargarLista();
        return null;
    }

    /**
     * Iyección de dependencia para conectarse al EJB(Lógica de Negocio)
     * Iyección de dependencia para el sistema de Administarción. Iyección de
     * dependencia para el sistema de Emergencia.
     */
    @Override
    protected void cargarEjb() {
        //super.cargarEjb();
        if (hcAdmin == null) {
            String ejbPath = null;
            try {
                ResourceBundle property = getProperties();
                String ORBContext = property.getString("ORBContext");
                String ejbContextPath = property.getString("ejb.context.path.ConsExterna");
                ejbPath = ORBContext + ejbContextPath + "/ConsExternaAdministradorBean";
                hcAdmin = (ConsExternaAdministrador) AplinfoFactoryBean.lookupBean(ejbPath, false);
            } catch (Exception e) {
                log.error("cargarEjb() {} - {} ", ejbPath, e.getMessage());
            }

        }
        if (admin == null) {
            String ejbPath = null;
            try {
                ResourceBundle property = getProperties();
                String ORBContext = property.getString("ORBContext");
                String ejbContextPath = property.getString("ejb.context.path.admin");
                ejbPath = ORBContext + ejbContextPath + "/AdministradorBeanHaiam";
                admin = (AdministradorHaiam) AplinfoFactoryBean.lookupBean(ejbPath, false);
            } catch (Exception e) {
                log.error(" cargarEjb() {} - {} ", ejbPath, e.getMessage());
            }
        }
        if (adminObject == null) {
            String ejbPath = null;
            try {
                ResourceBundle property = getProperties();
                String ORBContext = property.getString("ORBContext");
                String ejbContextPath = property.getString("ejb.context.path.admin");
                ejbPath = ORBContext + ejbContextPath + "/AdministradorBeanHaiam";
                adminObject = (AdministradorHaiam) AplinfoFactoryBean.lookupBean(ejbPath, false);
            } catch (Exception e) {
                log.error(" cargarEjb() {} - {} ", ejbPath, e.getMessage());
            }
        }
    }

    @Override
    public String editarAction(CexConsultaTerapia obj) {
        //inicializar();
        object = obj;
        //Reemplazo de valores 
        //Movilidad
        if (object.getCctMovilidad().equals(1)) {
            movilidad = object.getCctMovilidad().equals(1);
        } else {
            movilidad = false;
        }
        //Fuerza muscular
        if (object.getCctFuerzaMuscular().equals(1)) {
            fuerzaMuscular = object.getCctFuerzaMuscular().equals(1);
        } else {
            fuerzaMuscular = false;
        }
        //Motricidad fina
        if (object.getCctMotricidadFina().equals(1)) {
            motricidadFina = object.getCctMotricidadFina().equals(1);
        } else {
            motricidadFina = false;
        }
        //Motricidad gruesa
        if (object.getCctMotricidadGruesa().equals(1)) {
            motricidadGruesa = object.getCctMotricidadGruesa().equals(1);
        } else {
            motricidadGruesa = false;
        }
        //Elongaciones
        if (object.getCctElongacionesMusculares().equals(1)) {
            elongacionesMusculares = object.getCctElongacionesMusculares().equals(1);
        } else {
            elongacionesMusculares = false;
        }
        //Digitopresion
        if (object.getCctDigitopresion().equals(1)) {
            digitoPresion = object.getCctDigitopresion().equals(1);
        } else {
            digitoPresion = false;
        }
        //Vesstido
        if (object.getCctVestido().equals(1)) {
            vestido = object.getCctVestido().equals(1);
        } else {
            vestido = false;
        }
        //higiene
        if (object.getCctHigiene().equals(1)) {
            higiene = object.getCctHigiene().equals(1);
        } else {
            higiene = false;
        }
        //Alimento
        if (object.getCctAlimento().equals(1)) {
            alimento = object.getCctAlimento().equals(1);
        } else {
            alimento = false;
        }
        //transferencias
        if (object.getCctTransferencias().equals(1)) {
            transferencias = object.getCctTransferencias().equals(1);
        } else {
            transferencias = false;
        }

        //Tecnica propioceo
        if (object.getCctTecnicaPropiocep().equals(1)) {
            tecPropiocep = object.getCctTecnicaPropiocep().equals(1);
        } else {
            tecPropiocep = false;
        }
        //Ayudas tecnicas
        if (object.getCctAyudaTecnica().equals(1)) {
            ayudaPropiocep = object.getCctAyudaTecnica().equals(1);
        } else {
            ayudaPropiocep = false;
        }
        //Entrenamiento prePotesico
        if (object.getCctEntrenamientoPreprotesico().equals(1)) {
            entrenamientoPrePro = object.getCctEntrenamientoPreprotesico().equals(1);
        } else {
            entrenamientoPrePro = false;
        }
        //entrenamiento pos protesico
        if (object.getCctEntrenamientoPosprotesico().equals(1)) {
            entrenamientoPostPro = object.getCctEntrenamientoPosprotesico().equals(1);
        } else {
            entrenamientoPostPro = false;
        }
        //Memoria
        if (object.getCctMemoria().equals(1)) {
            memoria = object.getCctMemoria().equals(1);
        } else {
            memoria = false;
        }
        //Concentracion
        if (object.getCctConcentracion().equals(1)) {
            concentracion = object.getCctConcentracion().equals(1);
        } else {
            concentracion = false;
        }
        //Calculo
        if (object.getCctCalculo().equals(1)) {
            calculo = object.getCctCalculo().equals(1);
        } else {
            calculo = false;
        }
        //terapia vestibular
        if (object.getCctTerapiaVestibular().equals(1)) {
            terapiaVestibular = object.getCctTerapiaVestibular().equals(1);
        } else {
            terapiaVestibular = false;
        }
        //control de postura
        if (object.getCctControlPostura().equals(1)) {
            controlPostura = object.getCctControlPostura().equals(1);
        } else {
            controlPostura = false;
        }
        //Osculomotricidad
        if (object.getCctOculomotricidad().equals(1)) {
            osculoMotricidad = object.getCctOculomotricidad().equals(1);
        } else {
            osculoMotricidad = false;
        }
        //parafina
        if (object.getCctParafina().equals(1)) {
            parafina = object.getCctParafina().equals(1);
        } else {
            parafina = false;
        }
        //tecnica de estimulacion sensorial
        if (object.getCctTecnicaEstimulacionSensor().equals(1)) {
            tecEstimulacionSensorial = object.getCctTecnicaEstimulacionSensor().equals(1);
        } else {
            tecEstimulacionSensorial = false;
        }
        //Otras
        if (object.getCctOtros().equals(1)) {
            otros = object.getCctOtros().equals(1);
        } else {
            otros = false;
        }
        //Otras
        if (object.getCctTaller().equals(1)) {
            taller = object.getCctTaller().equals(1);
        } else {
            taller = false;
        }
        //Laborterapia
        if (object.getCctLaborterapia().equals(1)) {
            laborterapia = object.getCctLaborterapia().equals(1);
        } else {
            laborterapia = false;
        }
        //Ocio individual
        if (object.getCctIndividual().equals(1)) {
            individual = object.getCctIndividual().equals(1);
        } else {
            individual = false;
        }
        //ocio colectivo
        if (object.getCctColectivo().equals(1)) {
            colectivo = object.getCctColectivo().equals(1);
        } else {
            colectivo = false;
        }
        return null;
    }

    /**
     * Funcion que divide dos numero BigDecimales en el caso de que el resultado
     * sea mas extenso de lo que este puede abarcar en la expecion lo divide
     * como double
     *
     * @param A
     * @param B
     * @return BigDe
     */
    public static BigDecimal divisionControlada(BigDecimal A, BigDecimal B) {
        try {
            return A.divide(B);
        } catch (Exception e) {
            return new BigDecimal(A.doubleValue() / B.doubleValue());
        }
    }

    /**
     * Obtiene una lista de objetos de tipo SelectedItem.
     *
     * @return la lista
     */
    @Override
    public List<SelectItem> getSelectedItem() {
//        try {
//            List<CexTurnosEnc> datos = admin.listarOrdenada(object.getClass(), "nombre", true);
//            List<SelectItem> items = new ArrayList<SelectItem>();
//            for (CexTurnosEnc obj : datos) {
//                items.add(new SelectItem(obj, obj.get));
//            }
//            return items;
//        } catch (Exception e) {
//            log.error("getSelectedItem() {} ", e.getMessage());
//        }
        return null;
    }

    public void onRowEdit(RowEditEvent event) {
        String nombreMetodo = Thread.currentThread().getStackTrace()[1].getMethodName() + "()";
        try {
            CexAgenda objAgen = (CexAgenda) event.getObject();
            adminObject.modificar(objAgen, (UsuarioAdmin) FacesContext.getCurrentInstance().getExternalContext().getSessionMap().get("user"));
        } catch (Exception e) {
            log.error("{}: {} ", nombreMetodo, e);
        }
    }

    public boolean isMovilidad() {
        return movilidad;
    }

    public void setMovilidad(boolean movilidad) {
        this.movilidad = movilidad;
    }

    public boolean isFuerzaMuscular() {
        return fuerzaMuscular;
    }

    public void setFuerzaMuscular(boolean fuerzaMuscular) {
        this.fuerzaMuscular = fuerzaMuscular;
    }

    public boolean isElongacionesMusculares() {
        return elongacionesMusculares;
    }

    public void setElongacionesMusculares(boolean elongacionesMusculares) {
        this.elongacionesMusculares = elongacionesMusculares;
    }

    public boolean isDigitoPresion() {
        return digitoPresion;
    }

    public void setDigitoPresion(boolean digitoPresion) {
        this.digitoPresion = digitoPresion;
    }

    public void onRowCancel(RowEditEvent event) {
        FacesMessage msg = new FacesMessage("Edit Cancelled", ((CexAgenda) event.getObject()).getCagObservacion());
        FacesContext.getCurrentInstance().addMessage(null, msg);
    }

    public boolean isVestido() {
        return vestido;
    }

    public void setVestido(boolean vestido) {
        this.vestido = vestido;
    }

    public boolean isHigiene() {
        return higiene;
    }

    public void setHigiene(boolean higiene) {
        this.higiene = higiene;
    }

    public boolean isAlimento() {
        return alimento;
    }

    public void setAlimento(boolean alimento) {
        this.alimento = alimento;
    }

    public boolean isTransferencias() {
        return transferencias;
    }

    public void setTransferencias(boolean transferencias) {
        this.transferencias = transferencias;
    }

    @Override
    public DataModel<CexConsultaTerapia> getDataModel() {
        return null;
    }

    public boolean isMemoria() {
        return memoria;
    }

    public void setMemoria(boolean memoria) {
        this.memoria = memoria;
    }

    public boolean isConcentracion() {
        return concentracion;
    }

    public void setConcentracion(boolean concentracion) {
        this.concentracion = concentracion;
    }

    public boolean isCalculo() {
        return calculo;
    }

    public void setCalculo(boolean calculo) {
        this.calculo = calculo;
    }

    public boolean isTaller() {
        return taller;
    }

    public void setTaller(boolean taller) {
        this.taller = taller;
    }

    public boolean isLaborterapia() {
        return laborterapia;
    }

    public void setLaborterapia(boolean laborterapia) {
        this.laborterapia = laborterapia;
    }

    public boolean isIndividual() {
        return individual;
    }

    public void setIndividual(boolean individual) {
        this.individual = individual;
    }

    public boolean isColectivo() {
        return colectivo;
    }

    public void setColectivo(boolean colectivo) {
        this.colectivo = colectivo;
    }

    public boolean isParafina() {
        return parafina;
    }

    public void setParafina(boolean parafina) {
        this.parafina = parafina;
    }

    public boolean isMotricidadFina() {
        return motricidadFina;
    }

    public void setMotricidadFina(boolean motricidadFina) {
        this.motricidadFina = motricidadFina;
    }

    public boolean isMotricidadGruesa() {
        return motricidadGruesa;
    }

    public void setMotricidadGruesa(boolean motricidadGruesa) {
        this.motricidadGruesa = motricidadGruesa;
    }

    public boolean isAyudaPropiocep() {
        return ayudaPropiocep;
    }

    public void setAyudaPropiocep(boolean ayudaPropiocep) {
        this.ayudaPropiocep = ayudaPropiocep;
    }

    public boolean isEntrenamientoPrePro() {
        return entrenamientoPrePro;
    }

    public void setEntrenamientoPrePro(boolean entrenamientoPrePro) {
        this.entrenamientoPrePro = entrenamientoPrePro;
    }

    public boolean isEntrenamientoPostPro() {
        return entrenamientoPostPro;
    }

    public void setEntrenamientoPostPro(boolean entrenamientoPostPro) {
        this.entrenamientoPostPro = entrenamientoPostPro;
    }

    public boolean isControlPostura() {
        return controlPostura;
    }

    public void setControlPostura(boolean controlPostura) {
        this.controlPostura = controlPostura;
    }

    public boolean isOsculoMotricidad() {
        return osculoMotricidad;
    }

    public void setOsculoMotricidad(boolean osculoMotricidad) {
        this.osculoMotricidad = osculoMotricidad;
    }

    public boolean isTecPropiocep() {
        return tecPropiocep;
    }

    public void setTecPropiocep(boolean tecPropiocep) {
        this.tecPropiocep = tecPropiocep;
    }

    public boolean isTerapiaVestibular() {
        return terapiaVestibular;
    }

    public void setTerapiaVestibular(boolean terapiaVestibular) {
        this.terapiaVestibular = terapiaVestibular;
    }

    public boolean isTecEstimulacionSensorial() {
        return tecEstimulacionSensorial;
    }

    public void setTecEstimulacionSensorial(boolean tecEstimulacionSensorial) {
        this.tecEstimulacionSensorial = tecEstimulacionSensorial;
    }

    public boolean isOtros() {
        return otros;
    }

    public void setOtros(boolean otros) {
        this.otros = otros;
    }

    @Override
    protected ResourceBundle getProperties() {
        return ResourceBundle.getBundle("aplicacion");
    }
}
